package com.yuanfeng.userms.vo;

import com.yuanfeng.commoms.constant.CommonType;
import com.yuanfeng.commoms.util.DateUtils;
import com.yuanfeng.commoms.vo.user.UserInfoVO;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@AllArgsConstructor
@NoArgsConstructor
public class ShopVKUserVO {
    /**
     *
     */
    private Integer id;
    /**
     *用户id
     */
    private String userId;
    /**
     *用户名
     */
    private String userName;
    /**
     *真实姓名
     */
    private String realName;
    /**
     *手机号
     */
    private String mobile;
    /**
     *店铺id
     */
    private Integer shopId;
    /**
     *店铺名
     */
    private String shopName;
    /**
     *店铺用户id
     */
    private String shopUserId;
    /**
     *门店id
     */
    private Integer storeId;
    /**
     *门店名
     */
    private String storeName;
    /**
     *1.通过，2.拒绝，3.待审核 4已删除
     */
    private Integer userStatus;

    /**
     * 需要邀请人数
     */
    private Integer inviteNum;

    /**
     *分享人数
     */
    private Integer shareNum;


    /**
     *推广人数
     */
    private String var1;


    /**
     *暂定 微客上级id
     */
    private String var2;


    /**
     *分享佣金总额
     */
    private String var3;


    /**
     *
     */
    private String var4;


    /**
     *创建时间
     */
    private String createTime;

    /**
     *
     */
    private Integer shStatus;



    public ShopVKUserVO(Integer id, String mobile, Integer storeId, String storeName) {
        this.id = id;
        this.mobile = mobile;
        this.storeId = storeId;
        this.storeName = storeName;
    }

    public ShopVKUserVO(Integer id, Integer storeId, String storeName) {
        this.id = id;
        this.storeId = storeId;
        this.storeName = storeName;
    }

    public ShopVKUserVO(UserInfoDetailVO userInfo, UserInfoDetailVO parentUserInfo, String shopName) {
        this.userId = userInfo.getUserId();
        this.userName = userInfo.getUserName();
        this.realName = userInfo.getUserTruename();
        this.mobile = userInfo.getUserMobile();
        this.shopId = parentUserInfo.getUserBindShopId();
        this.shopName = shopName;
        this.storeId = parentUserInfo.getUserBindStoreId();
        this.storeName = parentUserInfo.getUserBindStoreName();
        this.shopUserId = parentUserInfo.getUserId().toString();
        this.userStatus = CommonType.vKStatus.PASS.getCode();
        this.createTime = DateUtils.getNowDateToString();
    }


    public ShopVKUserVO(UserInfoVO userInfo, UserInfoDetailVO parentUserInfo, String shopName) {
        this.userId = userInfo.getUserId();
        this.userName = userInfo.getUserName();
        this.mobile = userInfo.getUserMobile();
        this.shopId = parentUserInfo.getUserBindShopId();
        this.shopName = shopName;
        this.storeId = parentUserInfo.getUserBindStoreId();
        this.storeName = parentUserInfo.getUserBindStoreName();
        this.shopUserId = parentUserInfo.getUserId().toString();
        this.userStatus =  CommonType.vKStatus.PASS.getCode();
        this.createTime = DateUtils.getNowDateToString();
    }

    public ShopVKUserVO(MallVipUserVO mallVipUser, UserInfoVO mallUserInfo) {
        this.userId = mallVipUser.getUserId();
        this.userName = mallVipUser.getUserName();
        this.mobile = mallVipUser.getMobile();
        this.shopId = mallVipUser.getShopId();
        this.shopName = mallVipUser.getShopName();
        this.storeId = mallVipUser.getStoreId();
        this.storeName = mallVipUser.getStoreName();
        this.shopUserId = mallUserInfo.getUserId().toString();
        this.userStatus =  CommonType.vKStatus.PASS.getCode();
        this.createTime = DateUtils.getNowDateToString();
    }
}
